/*
 * @Author: 葛文杰
 * @Date: 2021/1/29 10:26
 * @Description: 封装一下基类控制器
 */
'use strict';

const Controller = require('egg').Controller;

class BaseController extends Controller {

    /**
     * 正确返回请求json
     * @param  {object} data 返回数据
     * @param  {number} status 接口返回状态
     * @param  {string} message 接口返回消息
     * @return {[type]}      [description]
     */
    async success({ data = null, status = 200, message }) {
        const { ctx } = this;
        ctx.helper.ctxJSON({ ctx, data, status, message });
    }

    /**
     * 错误返回请求json
     * @param  {object} data 返回数据
     * @param  {number} status 接口返回状态
     * @param  {string} message 接口返回消息
     * @return {[type]}      [description]
     */
    async error({ data = null, status = 400, message }) {
        const { ctx } = this;
        ctx.helper.ctxJSON({ ctx, data, status, message });
    }
}

module.exports = BaseController;
